In a system for routing traffic, for example, in a telecommunication system for routing a call to interconnect a calling station with a called station, it occasionally happens that the connection is blocked. Reasons for blocking include the unavailability of a path between the calling station and called station, for example, stemming from an all-trunks-busy condition. To lessen the blocking of a call, the system may provide alternate routes between the calling station, or originating node, and the called station, or terminating node. Indeed, alternate routing has come to be the technique that is employed routinely by telecommunication systems to lessen the chance that a call will be blocked because of the unavailability of a trunk, or path.
In providing alternate routing, a telecommunication system comprised of a plurality of nodes needs to ensure that a circular path, in which the call is routed through the same node two or more times, does not occur. It is clear that the establishment of a circular path is an inefficient use of switching equipment, since an incoming and an outgoing trunk are made busy each time a call passes through a node. Consequently, circular paths needlessly decrease the availability of trunks and therefore increase the chance that other circular paths are established.
One solution to this problem predetermines the path of a call at the originating node before the connection is actually established. For example, in U.S. Pat. No. 4,345,116 to G. R. Ash et al there is disclosed a routing arrangement for routing traffic through the public switched network. In this arrangement, the preferred route of a call is predetermined at the originating switching center before it is actually established. However, this arrangement is inefficient since it is not known at the originating switching center whether a blocking condition exists at some point along the predetermined route before the route is established. Consequently, when a blocking condition is encountered, the originating switching center tears down the uncompleted connection and reroutes the call over an alternate route, starting once again from the originating switching center.
Private communication networks, which typically comprise a plurality of interconnected PBXs, or nodes, avoid establishing a circular path in a multinode connection by limiting alternate route selection to the originating node of a call. Each node in such networks is typically arranged such that when it is the originating node of a call, it has the option to select a predetermined second choice path to advance a call if a predetermined first choice path is unavailable. If, on the other hand, a node happens to be an intermediate node in the path of a call, it does not have the option to select a second choice path if a first choice path to a next node is unavailable. Consequently, if a first choice path is not available at an intermediate node, the originating node tears down the uncompleted connection and makes no attempt to reroute the call over an alternate route.
Thus, in order to avoid establishing circular paths, prior art call routing arrangements typically either restrict a call connection to a predetermined route or to a predetermined choice path. Moreover, it appears that the prior art of call routing makes no attempt to avoid a blocking condition by, for example, allowing an intermediate node to independently select an alternate path around a blocking condition in order to complete a call.
Prior art call routing arrangements have heretofore backed away from allowing a node to independently select the next path in a call connection, since it was believed that unless an intermediate node knew the identity of each prior node in a connection, it could establish a circular path between itself and a previous node. It was also heretofore believed that it would be an onerous task to pass the identity of each node in a connection to a next node as the connection is being established. Consequently, prior call routing arrangements have stuck with some variation of the scheme that predetermines the path of a call.